<?php
/**
 * Created by PhpStorm.
 * User: aako
 * Date: 15-12-21
 * Time: 下午3:25
 */

namespace App\Interfaces;


interface CollectionService
{
    /**
     * 根据用户ID获取所有收藏内容
     * @param $user_id 用户ID
     * @return UserCollection
     */
    public function getUserCollection($user_id);

    /**
     * 获取用户收藏分类的数量
     * @param $id 用户ID
     * @param $type 收藏类型（商品/品牌/店铺）
     * @return mixed
     */
    public function getNumOfUserCollectionByType($id, $type);

    /**
     * 根据用户ID和收藏类型获取对应的内容
     * @param $id 用户ID
     * @param $type 收藏类型
     * @return UserCollection
     */
    public function getUserCollectionByType($id, $type);

    /**
     * 记录用户收藏
     * @param $metadata {@link App\Models\UserCollection}属性
     * @return UserCollection
     */
    public function save($metadata);

    /**
     * 取消收藏
     * @param $id 收藏记录ID
     * @return mixed
     */
    public function del($id);


}